package com.scvtc.domain.entity.teacher;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * 教师基本信息(TeacherBase)类
 *
 * @author yiFei
 * @since 2022-05-23 17:40:00
 */
@Data
@Builder
@EqualsAndHashCode(callSuper = false)
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@ApiModel("教师基本信息")
@TableName("teacher_base")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class TeacherBase implements Serializable {

    private static final long serialVersionUID = -28559916932121679L;
    /**
     * 主键
     */
    @ApiModelProperty(value = "主键")
    @TableId
    private Long id;

    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名")
    private String teacherName;

    /**
     * 性别
     */
    @ApiModelProperty(value = "性别")
    private String teacherGender;

    /**
     * 民族
     */
    @ApiModelProperty(value = "民族")
    private String teacherNation;

    /**
     * 部门
     */
    @ApiModelProperty(value = "部门")
    private String teacherDepartment;

    /**
     * 电话
     */
    @ApiModelProperty(value = "电话")
    private String teacherTel;

    /**
     * 是否在编
     */
    @ApiModelProperty(value = "是否在编")
    private String teacherSituation;

    /**
     * 教研室
     */
    @ApiModelProperty(value = "教研室")
    private String teacherOffice;

    /**
     * 生日
     */
    @ApiModelProperty(value = "生日")
    private String teacherBirthday;

    /**
     * 参加工作时间
     */
    @ApiModelProperty(value = "参加工作时间")
    private String teacherWorkDate;

    /**
     * 学位
     */
    @ApiModelProperty(value = "学位")
    private String teacherDegree;

    /**
     * 学历
     */
    @ApiModelProperty(value = "学历")
    private String teacherDiplomas;

    /**
     * 毕业时间
     */
    @ApiModelProperty(value = "毕业时间")
    private String teacherGraduateDate;

    /**
     * 毕业学校
     */
    @ApiModelProperty(value = "毕业学校")
    private String teacherGraduateCollege;

    /**
     * 毕业专业
     */
    @ApiModelProperty(value = "毕业专业")
    private String teacherMajor;

    /**
     * 职称
     */
    @ApiModelProperty(value = "职称")
    private String teacherRank;

    /**
     * 政治面貌
     */
    @ApiModelProperty(value = "政治面貌")
    private String teacherPolitical;

    /**
     * 是否退休
     */
    @ApiModelProperty(value = "是否退休")
    private String teacherRetired;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    private String teacherDescription;

    /**
     * 数据状态（0正常 1停用）
     */
    @ApiModelProperty(value = "数据状态（0正常 1停用）")
    private String status;

    /**
     * 创建人的用户id
     */
    @ApiModelProperty(value = "创建人的用户id")
    private Long createBy;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    /**
     * 更新人
     */
    @ApiModelProperty(value = "更新人")
    private Long updateBy;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    /**
     * 删除标志（0代表未删除，1代表已删除）
     */
    @ApiModelProperty(value = "删除标志（0代表未删除，1代表已删除）")
    private String delFlag;

    /**
     * 身份证
     */
    @ApiModelProperty(value = "身份证")
    private String teacherIdentityId;

    /**
     * 教工号
     */
    @ApiModelProperty(value = "教工号")
    private String teacherCollegeId;

    /**
     * 进入本单位时间
     */
    @ApiModelProperty(value = "进入本单位时间")
    private String teacherInDate;

    /**
     * 职称评上时间
     */
    @ApiModelProperty(value = "职称评上时间")
    private String teacherRankDate;

    /**
     * 职称起聘时间
     */
    @ApiModelProperty(value = "职称起聘时间")
    private String teacherHireDate;

    /**
     * 聘用岗位等级
     */
    @ApiModelProperty(value = "聘用岗位等级")
    private String teacherJobRank;

    /**
     * 入党时间
     */
    @ApiModelProperty(value = "入党时间")
    private String teacherPartyDate;

}
